package com.zyw.orm.mybatis;

import com.zyw.orm.dao.BaseDao;
import com.zyw.orm.support.BaseEntity;
import org.mybatis.spring.SqlSessionTemplate;

import java.io.Serializable;

/**
 * @Title: mybatisBaseDao
 * @Description: mybatis dao 接口定义
 * @Date 16/10/9
 * @Author zhangyw
 */
public interface MybatisBaseDao<T extends BaseEntity, PK extends Serializable> extends BaseDao<T, PK> {

    Object executeSelectOne(String statement);

    Object executeSelectOne(String statement, Object params);

    Object executeQuery(String statement);

    Object executeQuery(String statement, Object params);

    Object executeUpdate(String statement, Object params);

    Object executeInsert(String statement, Object params);

    SqlSessionTemplate getSqlSessionTemplate();
}